Enterprise data matching

ABSTRACT

A system and method for managing media advertising enterprise data including a process for learning enterprise data matching. An EDM (Enterprise Data Management) application module can be configured to include a set of rules at an enterprise level to manage disparate and disconnected records associated with an entity. A number of unmatched and enterprise entities that matches with respect to an active entity can be returned based on a fuzzy logic associated with various matching options stored in an EDM database. A matching process can then be performed to accurately match similar records regardless of manual input, location, and format of the records in a distributed system. Each unmatched record can then be assigned with a parent enterprise entity. Such an optimization mechanism can interactively manage and report records at the enterprise level in a simple and efficient manner.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority pursuant to 35 U.S.C. §120, as acontinuation, to the following U.S. Utility Patent Application which ishereby incorporated herein by reference in its entirety and made part ofthe present U.S. Utility Patent Application for all purposes:

-   -   U.S. Utility application Ser. No. 12/642,858, entitled        “PROCESSES TO LEARN ENTERPRISE DATA MATCHING,” (Attorney Docket        No. 103-LAN-01-2009), filed Dec. 21, 2009, pending.

TECHNICAL FIELD

Embodiments are generally related to enterprise data-processing systemsand methods. Embodiments also relate in general to the field ofcomputers and similar technologies and, in particular, to softwareutilized in this field. In addition, embodiments relate to themanagement of advertising data.

BACKGROUND OF THE INVENTION

Advertising forms an important part of broadcast programming includingbroadcast video (e.g., television), radio, and printed media.Advertising management systems are distributed systems where localentities create and manage advertiser and agency content and records.Such systems often possess a large number of duplicate advertiser andagency records in their database(s). Integrating such distributedsystems into an enterprise environment can create duplicate entries,compatibility issues, connection difficulties, redundancy issues, andother significant inefficiencies.

Many distributed and disconnected legacy systems utilized by mediaoutlets typically include a large number of duplicate advertiser andagency records. One of the main problems associated with conventionaltechniques for managing such records is the lack of effective tools forscoring, evaluating, and comparing data with respect to a singleenterprise. For example, consider a user belonging to a marketassociated with an enterprise that creates a new advertiser named ‘BajaFresh’ and another user who belongs to another market associated withthe same enterprise creates a new advertiser ‘Baja Grill’ with a slightvariation in the name (i.e., “Baja”). Technically, both these advertisernames refer to the same master advertiser, which is ‘Baja Fresh’. Hence,it is important to have a single instance of an advertiser and notmultiple duplicates for management and reporting purposes. Anotherproblem associated with conventional advertising techniques involvesmanagement and reporting of large amounts of data by local users, whichis time consuming and inefficient.

Based on the foregoing, it is believed that a need exists for animproved system and method for managing media advertising enterprisedata, as described in greater detail herein.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying figures, in which like reference numerals refer toidentical or functionally-similar elements throughout the separate viewsand which are incorporated in and form a part of the specification,further illustrate the present invention and, together with the detaileddescription of the invention, serve to explain the principles of thepresent invention.

FIG. 1 illustrates a schematic view of a data-processing system in whichan embodiment may be implemented;

FIG. 2 illustrates a schematic view of a software system including anoperating system, application software, and a user interface forcarrying out an embodiment;

FIG. 3 illustrates a graphical representation of a network ofdata-processing systems in which aspects of the disclosed embodimentsmay be implemented;

FIG. 4 illustrates a block diagram of a media advertising enterprisedata management system, in accordance with the disclosed embodiments;

FIG. 5 illustrates a high-level flow chart of operations illustratinglogical operational steps of a method for managing media advertisingenterprise data, in accordance with the disclosed embodiments;

FIG. 6 illustrates a graphical user interface that displays userinformation associated with the EDM system, in accordance with thedisclosed embodiments;

FIG. 7 illustrates a high-level flow chart of operations illustratinglogical operational steps of a method for configuring a fuzzy logic inassociation with various matching options to match an active entity withrespect to an unmatched entity and an enterprise entity, in accordancewith the disclosed embodiments;

FIG. 8 illustrates a graphical user interface that displays an unmatchedentity section and an enterprise entity section, in accordance with thedisclosed embodiment;

FIG. 9 illustrates a graphical user interface for inputting detailsassociated with a new enterprise advertiser, in accordance with thedisclosed embodiments;

FIG. 10 illustrates a graphical user interface that displays a number ofenterprise entities, in accordance with the disclosed embodiments;

FIG. 11 illustrates a graphical user interface that displays usermetrics associated with the entities, in accordance with the disclosedembodiments; and

FIG. 12 illustrates a graphical user interface that displays life timemetrics associated with the entities, in accordance with the disclosedembodiments.

DETAILED DESCRIPTION

The particular values and configurations discussed in these non-limitingexamples can be varied and are cited merely to illustrate at least oneembodiment and are not intended to limit the scope thereof.

FIGS. 1-3 are provided as exemplary diagrams of data-processingenvironments in which embodiments of the present invention may beimplemented. It should be appreciated that FIGS. 1-3 are only exemplaryand are not intended to assert or imply any limitation with regard tothe environments in which aspects or embodiments of the disclosedembodiments may be implemented. Many modifications to the depictedenvironments may be made without departing from the spirit and scope ofthe disclosed embodiments.

As illustrated in FIG. 1, the disclosed embodiments may be implementedin the context of a data-processing system 100 that includes, forexample, a central processor 101, a main memory 102, an input/outputcontroller 103, a keyboard 104, an input device 105 (e.g., a pointingdevice, such as a mouse, track ball, pen device, etc), a display device106, a mass storage 107 (e.g., a hard disk), and a USB (Universal SerialBus) peripheral connection 111. Additional input/output devices, such asa rendering device 108 (e.g., printer, scanner, fax machine, etc), forexample, may be associated with the data-processing system 100 asdesired. As illustrated, the various components of data-processingsystem 100 can communicate electronically through a system bus 110 orsimilar architecture. The system bus 110 may be, for example, asubsystem that transfers data between, for example, computer componentswithin data-processing system 100 or to and from other data-processingdevices, components, computers, etc.

FIG. 2 illustrates a computer software system 150 for directing theoperation of the data-processing system 100 depicted in FIG. 1. Softwareapplication 154, stored in main memory 102 and on mass storage 107,generally includes a kernel or operating system 151 and a shell orinterface 153. One or more application programs, such as softwareapplication 154, may be “loaded” (i.e., transferred from mass storage107 into the main memory 102) for execution by the data-processingsystem 100. The data-processing system 100 receives user commands anddata through user interface 153; these inputs may then be acted upon bythe data-processing system 100 in accordance with instructions fromoperating system module 151 and/or software application 154.

The following discussion is intended to provide a brief, generaldescription of suitable computing environments in which the system andmethod may be implemented. Although not required, the disclosedembodiments will be described in the general context ofcomputer-executable instructions such as program modules, being executedby a single computer. In most instances, a “module” constitutes asoftware application.

Generally, program modules include, but are not limited to, routines,subroutines, software applications, programs, objects, components, datastructures, etc., that perform particular tasks or implement particularabstract data types and instructions. Moreover, those skilled in the artwill appreciate that the disclosed method and system may be practicedwith other computer system configurations such as, for example,hand-held devices, multi-processor systems, data networks,microprocessor-based or programmable consumer electronics, networkedPCs, minicomputers, mainframe computers, servers, and the like.

Note that the term module as utilized herein may refer to a collectionof routines and data structures that perform a particular task orimplements a particular abstract data type. Modules may be composed oftwo parts: an interface, which lists the constants, data types,variable, and routines that can be accessed by other modules orroutines; and an implementation, which is typically private (accessibleonly to that module) and which includes source code that actuallyimplements the routines in the module. The term module may also simplyrefer to an application such as a computer program designed to assist inthe performance of a specific task such as word processing, accounting,inventory management, etc.

The interface 153, which is preferably a graphical user interface (GUI),can serve to display results, whereupon a user may supply additionalinputs or terminate a particular session.

In some embodiments, operating system 151 and interface 153 can beimplemented in the context of a “Windows” system. It can be appreciated,of course, that other types of operating systems and interfaces may bealternatively utilized. For example, rather than a traditional “Windows”system, other operation systems such as, for example, Linux may also beemployed with respect to operating system 151 and interface 153. Thesoftware application 154 can include, for example, an EDM module 152 formanaging media advertising enterprise data in a business managementapplication. The EDM module 152 generally configures a set of rules atan enterprise level to manage disparate and disconnected records. EDMmodule 152 can include instructions such as those of method 500 and 700respectively discussed herein with respect to FIG. 5 and FIG. 7.

FIG. 3 illustrates a graphical representation of a network ofdata-processing systems in which aspects of the disclosed embodimentsmay be implemented. Network data-processing system 300 is a network ofcomputers in which embodiments of the present invention may beimplemented. Network data-processing system 300 contains network 302,which is the medium used to provide communications links between variousdevices and computers connected together within network data-processingapparatus 300. Network 302 may include connections such as wire,wireless communication links, or fiber optic cables.

In the depicted example, server 304 and server 306 connect to andcommunicate with network 302 along with storage unit 308 (e.g. a memory,database, etc). In addition, clients 310, 312, and 314 connect to andcommunicate with network 302. These clients 310, 312, and 314 may be,for example, personal computers or network computers. Data-processingsystem 100 depicted in FIG. 1 can be, for example, a client such asclient 310, 312, and/or 314. Alternatively, data-processing system 100can be implemented as a server such as servers 304 and/or 306, dependingupon design considerations.

In the depicted example, server 304 provides data such as boot files,operating system images, and applications to clients 310, 312, and 314.Clients 310, 312, and 314 are clients to server 304 in this example.Network data-processing system 300 may include additional servers,clients, and other devices not shown. Specifically, clients may connectto any member of a network of servers, which provide equivalent content.

In the depicted example, network data-processing system 300 is theInternet with network 302 representing a worldwide collection ofnetworks and gateways that use the Transmission ControlProtocol/Internet Protocol (TCP/IP) suite of protocols to communicatewith one another. At the heart of the Internet is a backbone ofhigh-speed data communication lines between major nodes or hostcomputers, consisting of thousands of commercial, government,educational, and other computer systems that route data and messages. Ofcourse, network data-processing system 300 also may be implemented as anumber of different types of networks such as, for example, an intranet,a local area network (LAN), or a wide area network (WAN).

FIGS. 1-3 are thus intended as an example and not as an architecturallimitation with respect to particular embodiments. Such embodiments,however, are not limited to any particular application or any particularcomputing or data-processing environment. Instead, those skilled in theart will appreciate that the disclosed system and method may beadvantageously applied to a variety of system and application software.Moreover, the present invention may be embodied on a variety ofdifferent computing platforms, including Macintosh, UNIX, LINUX, and thelike.

FIG. 4 illustrates a block diagram of a media advertising enterprisedata management (EDM) system 400, in accordance with the disclosedembodiments. Note that in FIGS. 1-12, identical or similar blocks aregenerally indicated by identical reference numerals. The EDM system 400matches a market entity to a central enterprise entity to permitconsolidated reporting at an enterprise level. Note that the term“entity” refers generally to “advertiser” or “agency”. The term entitiescan be used to describe situations that affect both the advertisers andagencies, for example, unmatched entities.

The EDM system 400 generally includes the data processing system 100, acommunication module 450, and an enterprise and media management system480. The data processing system 100 can provide access to a set of users440 with respect to the enterprise and media management system 480.Data-processing system 100 depicted in FIG. 1 can be, for example, aserver. Other devices such as, for example, desktops, network devices,palmtops, mobile phones, etc., may also be included in the enterprisedata management system 400, as service providers.

The data-processing system 100 can be configured to include an EDMmodule 152 and a user database 430. The EDM module 152 can interact withand manage data in various enterprise and media applications andmanagement solutions. The enterprise and media management system 480 canbe, for example, VIERO®, transACT™, FUSION platforms that aretrademarked and provided by Clear Channel to provide just-in-timeadvertising and extensibility services. The EDM module 152 can run underthe credentials of the user logged operating system and utilize anintegrated login in order to authenticate the user 440. Such a modulecan thus include instructions, which are stored in a computer memory andthen retrieved and executed by, for example, a data-processing systemsuch as, for example the system 100 depicted in FIG. 1.

The EDM module 152 can authenticate the user 440 by accessing a domainlogin and security privilege with respect to the user 440 that arelocally stored in the user database 430. When the user 440 accesses thesystem 400, the EDM application 152 validates the domain login of thelogged user with respect to the domain user name stored in the userdatabase 430 via a gate keeper service 420 and checks if the user 440 isauthorized to access the application 152. If the domain user nameassociated with the user 440 exists, the EDM module 152 validates andprovides access to the required application.

The communication module 450 provides enterprise matching of distributedand disconnected entity records from user inputs. Such a process canaccurately match the similar entity records regardless of the manualinput, the location, and format of the records in the distributed system480. The EDM module 152 includes a fuzzy logic in association withvarious matching options to match an active entity with respect to anunmatched entity and an enterprise entity. The system 400 organizes thedisparate records utilizing a set of rules and a matching process toefficiently manage unorganized, un-useable records in the enterpriserecord set. The system 400 therefore provides a variety of capabilitiesfor managing and reporting advertising records at the enterprise level.The process can start with an initial set of user inputs and adapt andlearn behavior as users interact with the system 400.

The communication module 450 generally includes a hub 460 associatedwith a hub database 445, web services 465, and a hub queue 455. Notethat the hub 460 can be a network hub or repeater hub for connectingmultiple twisted pair or fiber optic Ethernet devices together and thusmaking them act as a single network segment. Hubs work at the physicallayer (layer 1) of the OSI model. The device is thus a form of multiportrepeater. Repeater hubs also participate in collision detection,forwarding a jam signal to all ports if it detects a collision.

The EDM module 152 interacts and manages data in the databases ofinstances associated with transACT™ and FUSION. The communication module450 also includes an inter-switch link 415 that includes an inter-switchlink queue 470 and an advertiser service 475. The media managementsystem 480 associated with the EDM system 400 can include a radio fusionengine 485, a media database 490, and an enterprise bus service (EBS)495. In general, fusion enabled entity can be stored into the radiofusion engine 485 and other entities can be stored in the advertiserservices 475 associated with the communication module 450. A newadvertiser/agency are required to be matched by the EDM module 152 andassigned a unique enterprise ID. Any key changes to theadvertiser/agency records require that the record is re-matched andre-assigned and assigned a new Enterprise ID.

If a record to be re-matched is received from the advertiser service475, the hub database 445 can check the advertiser ID or fusion IDassociated with the record and update the name, revenue type, orindustry code for the record. The changes with respect to the record canbe automatically updated in the hub database 445 based on the advertiserID/fusion ID and therefore when the user 440 logs into the EDMapplication 152 the changes can be visible. Additionally, when theadvertiser service 475 transmits a record to be reassessed to the hub460, it also transmits an ‘Old Enterprise ID’ in a response messagewhich can be helpful for the user 440 to re-match the entity record. Theproposals for advertisers/agents can be created in the radio fusionengine 485 for fusion enabled markets and, once the proposal becomes anorder, the records associated with the advertiser/agent can be movedfrom the advertiser service 475.

The EDM module 152 can pull the records from the advertiser services 475and the radio fusion engine 485 utilizing a windows service (DPEDM) atregular time intervals. The advertiser services 475 and the radio fusionengine 485 provide a response message that includes unmatched entityrecords with respect to the user request. The user 440 can further matchthe advertisers/agents with their respective enterprise entities andstore the records into the media database 490 associated with the mediamanagement system 480. The media database 490 includes a ‘tAdvertiser’and a ‘tAgency’ table that can be employed to store the advertiser andagent records individually. If a record exists in both fusion engine 485and the advertiser service 475, then the scores of both records can becombined in order to ensure that each entity can possess a single score.All the retrieved records can be further prioritized based on theassociated score in the media database 490. The records with the highestscore can be provided the highest priority and assigned to a parententerprise advertiser/agency.

FIG. 5 illustrates a high-level flow chart of operations illustratinglogical operational steps of a method 500 for managing media advertisingenterprise data, in accordance with the disclosed embodiments. It can beappreciated that each of the steps or logical operations of the method500 depicted in FIG. 5 can be implemented by executing a programinstruction or a group of instructions in the data-processing system100. The instructions depicted in FIG. 5 can be provided by, forexample, a module or group of modules, as discussed earlier herein.

The EDM system 400 can be an automated system that selects theadvertisers/agents to match and provides a list of possible matches. Theuser 440 can further make a final decision to match theadvertiser/agency or to add it as a new enterprise advertiser/agency inthe EDM system 400. Unmatched advertisers/agencies can be presentedutilizing a ranking system that permits the user 440 to matchadvertisers with the highest revenue or market ranking. The system 400can provide accurate reporting of advertiser records that is requiredfor better management decisions and, therefore, enterprise advertiserinformation can be as reliable as possible.

A set of rules can be configured at an enterprise level to manage thedisparate and disconnected market entity records, as depicted at block510. A scoring function can be computed for each entity(advertiser/agency) associated with the EDM system 400 based on therules in order to determine a highest priority, as illustrated at block520. The similar entity records can be matched regardless of manualinput location and format of the entity records, as indicated at block530.

Thereafter, each entity can be assigned with respect to a parententerprise entity, as illustrated at block 540. The method and systemdescribed herein can therefore provide an optimization mechanism forinteractively managing and reporting market entity records at theenterprise level in a simple and efficient manner. The enterpriseadvertiser is the parent advertiser for identical advertisers in themarkets. The advertiser can be created in the EDM system 400 and thelike market advertisers can be linked to it. The enterprise advertisersorder information from multiple markets can be consolidated forenterprise reporting once a link has been set up.

FIG. 6 illustrates a graphical user interface 600 that displays userinformation associated with the EDM system 400, in accordance with thedisclosed embodiments. Note that the GUI 600, 800, 850, 900, 930 and/or950 can be implemented utilizing a GUI such as, for example, the GUI 153depicted in FIG. 2 herein, and may be provided by a module such as, forexample, module 152 (i.e., a software application). GUI 600, 800, 850,900, 930 and/or 950 can be displayed via a display device such asmonitor 106 depicted in FIG. 1. In the illustrated figures herein, GUIsare generally implemented in the context of a GUI “window”. Note that incomputing, a GUI window is generally a visual area containing some typeof user interface (e.g., GUI 153). Such a “window” usually (but notalways) possesses a rectangular shape and displays the output of and mayallow input to one or more processes. Such windows are primarilyassociated with graphical displays, where they can be manipulated with amouse cursor such as, for example, the pointing device 105 depicted inFIG. 1. A GUI using windows as one of its main “metaphors” is oftenreferred to as a windowing system.

An EDM administrator can access the GUI 600 to manage users and monitoractivity. The GUI 600 can include functions such as, for example, toview existing EDM user information, add new users to access the EDMapplication, deactivate an active EDM user, and assign securityprivileges for each individual EDM user. The GUI 600 displays user cardssuch as a card 620 for all the existing EDM users in association withtheir details by accessing an icon 630. If the user “clicks” the icon630, the GUI 600 provides information associated with the user. The userinformation can include, for example, domain login (usually with CCRfollowed by four digit code for the market and end with user'sinitials), first name, last name, email, role (admin or general), andactive information. When displaying a user record, most information canbe transferred from the user's employee record to the EDM module 152.

The employee information can be retrieved through the gatekeeper service420 using a ‘BulkGetUsers’ web method. The ‘BulkGetUsers’ web methodreturns all the user records. EDM module 152 can run a daily process toacquire the data from the gatekeeper service 420 and store the data inthe ‘tUserSetting’ table associated with the EDM user database 430. Theactive EDM users and their details can only be displayed on the GUI 600.If the user “clicks” the add icon 640, the GUI 600 displays a popupwindow 610 that permits an administrator to add new users. The ‘adduser’ popup window 610 provides an option to search users by last nameand add them to the list of active users that are authorized to use theEDM application 152. Once the user has been added to the list of activeEDM users, they can be assigned a role such as admin or general in orderto determine the level of access to the application.

FIG. 7 illustrates a high-level flow chart of operations illustratinglogical operational steps of a method 700 for configuring a fuzzy logicin association with various matching options to match an active entitywith respect to an unmatched entity and an enterprise entity, inaccordance with the disclosed embodiments. The EDM module 152 can beconfigured to include a set of rules at an enterprise level to managedisparate and disconnected records (e.g., advertiser/agency records). Ascoring function with respect to each record can be computed based onthe rules to determine the highest priority.

A fuzzy logic can be configured in association with varying matchingoptions, as depicted at block 710. The fuzzy logic can be stored on theEDM database 430, as indicated at block 720. Thereafter, an activeadvertiser can be received, as illustrated at block 730. A number ofunmatched advertisers that matches with respect to the active advertiserbased on the fuzzy logic can be returned, as indicated at block 740.Thereafter, the unmatched advertisers can be displayed on an unmatchedadvertisers section 820, as indicated at block 750. Similarly, anenterprise advertiser that matches with respect to the active advertiserbased on the fuzzy logic can be returned, as depicted at block 760. Theenterprise advertisers can be displayed on an enterprise advertiserssection 810, as illustrated at block 770.

The unmatched entity section 820 and the enterprise entity section 810can be populated based on exact match, like match, and Soundex matchoptions associated with the fuzzy logic. The exact match option, ifchosen, provides that the unmatched entity or the enterprise entity nameexactly matches the name of the active entity to qualify for matching.If an unmatched entity or the enterprise entity name exactly matches thename of an active entity, then it is an exact match. For example, if the‘current active unmatched advertiser=Auto maker company Y’, then all theunmatched and enterprise advertisers that have exactly the same name asthe active advertiser can be considered an exact match.

Like matches can include any words that exist in association with theactive entity name. The unmatched and enterprise entities can bedisplayed in the following order such as, for example: exact matches;matches that starts, ends, or includes the first word of the activeentity; matches that starts, ends, or includes the second word of theactive entity; matches that starts, ends, or includes the third word ofthe active entity, and so on.

For example, if the “current active unmatched advertiser=Automaker XAutomaker Y Automaker Z of Orange County”, the like matches can returnall advertisers that: begins with, ends with, and includes ‘AutomakerX’; begins with, ends with, and includes ‘Automaker Y’; begins with,ends with, and includes ‘Automaker Z’; begins with, ends with, andincludes ‘Orange’, and begins with, ends with, and includes ‘County’.The words included in TABLE 1 can be excluded when performing likematching. For instance, if the ‘current active unmatchedadvertiser’=‘Auto Maker X, Automaker Y Automaker Z of Orange County’,then like matching can exclude words that start, include, or end with‘of’.

TABLE 1 I in who a is will about it with an inc und are la the as llcwww at n Inc be of LLC by on com or de that en the for this from to howwas what when where

Soundex is a data element search that employs an industry standardSoundex algorithm for indexing names by sound. The names with the samepronunciation can be encoded to the same representation so that they canbe matched despite minor differences in spelling. Note that the Soundexmatches cannot be performed, if the current active unmatched advertiseris a single letter name e.g., ‘E’. The Soundex matches can be performedonly for an unmatched entity and not for an enterprise entity. Forexample, if the ‘current active unmatched advertiser=Soda maker Y Inc’,Soundex matches can include advertiser names such as Soda Inc, computeressentials.

FIG. 8 illustrates a graphical user interface 800 that displays theunmatched entity section 820 and the enterprise entity section 810, inaccordance with the disclosed embodiment. Note that the user interfaceas utilized herein generally refers to a type of environment thatrepresents programs, files, options, and so forth by means ofgraphically displayed icons, menus, and dialog boxes on a screen. A usercan interact with the user interface to select and activate such optionsby pointing and clicking with a user input device such as, for example,a touch screen, a keyboard, or the like. A particular item can functionin the same manner to the user in all applications because the userinterface provides standard software routines to handle these elementsand reports the user's actions.

The active entity is an entity in the ‘tAdvertiser’ or ‘tAgency’ tablestored in the database 430, which possess the highest score and has notbeen assigned to any user. The system 400 automatically populates theactive entity section 810 with a brand new entity which has the highestscore the very first time the EDM user 440 navigates to the advertiserscreen 800. The user 440 may choose to continue working on the activeentity until they decide to acquire the next active entity. If the user440 is currently working on one active entity, then each time the userre-navigates to the entity screen, then the active entity can beautomatically populated with the same active entity.

The enterprise entity section 810 displays all the enterprise entitiesfrom the table that are exact, like, and fuzzy matches to the activeentity. The information such as, for example, name, industry, revenuetype, enterprise ID, phone, address 1, address 2, city, state, zip code,contact, and contact phone can be displayed for each of the enterpriseentity records. The records can be prioritized in alphabetic order ifthere are one or more entity records with the same score. Prioritizationensures that the most important entities can be considered first whileassigning them to the user.

The unmatched entity section 820 displays all the unmatched entitiesthat are either exact or fuzzy matches to the active entity from theTABLE. The numbers of unmatched entities that are displayed can beconfigured to be 100. The first record in the section 820 can be theactive entity record which can be bolded to differentiate it from theother records. The exact and fuzzy matching can be solely based on theunmatched entity name. If there is more than one exact match, then therecords can be sorted in descending order of score. Similarly, if thereis more than one fuzzy match, then those records can also be sorted indescending order of score. The active entity and all the similar matchesreturned by the fuzzy logic can be locked for the specific user. Theinformation can be displayed for each unmatched entity records, can be,for example, name, market, industry, revenue type, revenue ($), phone,address 1, address 2, city, state, zip code, contact, contact phone, andold enterprise entity. The old enterprise entity can be displayed if theentity is previously matched and some key information for an entitychanged.

FIG. 9 illustrates a graphical user interface 850 for entering detailsassociated with a new enterprise entity, in accordance with thedisclosed embodiment. If the user “clicks” a create icon 830 in the GUI800, a brand new enterprise entity that does not exist in the EDMdatabase 430 can be created. When the create icon/button 830 is clicked,a popup window 850 can be displayed which permits the user to manuallyenter the details such as, for example, name, address, industry, revenuetype, etc., associated with the new enterprise entity to be created. Thename, industry, and revenue type are mandatory fields. An option canalso be provided to create a new advertiser by typing in all the detailsmanually or choose to select one of the unmatched advertisers thatpossess similar details as that of the enterprise entity that needs tobe created.

FIG. 10 illustrates a graphical user interface 900 that displays anumber of enterprise entities, in accordance with the disclosedembodiments. The enterprise entity that is an exact match to an activeentity can be selected/highlighted by default. The user 440 can selectan enterprise entity from a displayed list 910 and that can be theparent enterprise entity to which all the similar (unmatched) entitiescan be matched. The user 440 has the option to select only oneenterprise entity at any point in time. If the user is unable to find anenterprise entity in the list, then the user 440 can click a ‘search’icon 840 in the toolbar associated with the GUI 900 to search for therequired enterprise entity and one enterprise entity can be selectedfrom the search results. The selected enterprise entity gets appended tothe enterprise entity section 810 and this record can beselected/highlighted. Similarly, the newly created enterprise entitygets appended to the enterprise entity section and the record can beselected/highlighted.

FIG. 11 illustrates a graphical user interface 930 that displays usermetrics associated with the entities, in accordance with the disclosedembodiments. An administrator can generate reports for user metrics fora certain period of time. The user metrics 930 can be generated for bothadvertisers and agencies on the same screen. The user metrics 930 can becomputed and displayed for each active EDM user including theadministrator. The report can be generated by providing a start and enddate. If the user “clicks” the generate icon 940 in the GUI 930, thedata for the requested start and end dates can be generated.

FIG. 12 illustrates a graphical user interface 950 that displays lifetime metrics associated with the entities, in accordance with thedisclosed embodiments. The lifetime metrics can be calculated for thelife of the EDM module 152. The metrics can be calculated for all themarkets in the table associated with the hub database 445. A marketscolumn 955 displays a list of markets from the table in alphabeticalorder. The first market can be selected/highlighted by default. An “AdvSupplied metrics” column 960 indicates a total number ofadvertisers/agencies supplied for a market during the lifetime of theEDM module 152. An “Adv Matched” column 965 indicates the total numberof advertisers/agencies matched for a market during the lifetime of theEDM module 152. If a record is matched and unmatched several times, thenthe final status can be evaluated. If the last status for an advertiseris ‘matched’, then it can be included in the matched count. If the laststatus for an advertiser is ‘unmatched’, then it cannot be included inthe matched count. An “Adv % Matched” column 970 can be calculated, asshown in equation (1).

(Matched/Supplied)*100  (1)

An “Adv Rev Supplied” column 975 indicates total revenue associated toall advertisers/agencies supplied for a market during the lifetime ofthe EDM module 152. The “Adv Rev Matched” indicates revenue associatedto ‘Matched’. The “Adv % Rev Matched” can be calculated, as shown inequation (2).

(Revenue Matched/Revenue Supplied)*100  (2)

The user interface 600, 800, 850, 900, 930 and/or 950 in associationwith the EDM module 152, can provide a unique and innovative techniquefor storing, retrieving, and manipulating data from existing databasescontaining media-related data. By utilizing such a database with asimplified storage and retrieval protocol, the data contained thereincan be effectively manipulated in real time. The disclosed userinterface provides access to both the EDM application and theoptimization mechanism in a simple and straightforward manner,significantly reducing training time. The EDM module 152 can provide ateam of users with the ability to match duplicate advertiser and agencyrecords to one master record. The system 400 provides a seamless pathfor “isolated” or distributed media records to integrate into a commonad management and display.

It will be appreciated that variations of the above-disclosed and otherfeatures and functions, or alternatives thereof, may be desirablycombined into many other different systems or applications. Also, thatvarious presently unforeseen or unanticipated alternatives,modifications, variations or improvements therein may be subsequentlymade by those skilled in the art which are also intended to beencompassed by the following claims.

What is claimed is:
 1. A method for managing advertising data,comprising: configuring a set of rules in order to manage a plurality ofunmatched records, each individual record of the plurality of unmatchedrecords is associated with a separate market entity of a plurality ofmarket entities, each of the plurality of market entities is one of anadvertiser and an agency, and managing the plurality of unmatchedrecords includes scoring each of the plurality of unmatched records, byexecuting a program instruction in a data-processing system; computing ascoring function, based on the set of rules, to assign a individual rankto each individual record based on one of revenue and market rankingassociated with the separate market entity, by executing a programinstruction in a data-processing system; selecting a highest-rankingmarket entity from the plurality of market entities as the activeentity, the active entity is associated with a first market, byexecuting a program instruction in a data-processing system; performinga first matching process, using a plurality of matching options, tomatch the active entity to at least one of a remaining plurality ofmarket entities, the at least one of a remaining plurality of marketentities is associated with a second market, by executing a programinstruction in a data-processing system; performing a second matchingprocess, using the plurality of matching options, to match the activeentity to a parent advertiser in order to manage and report recordsassociated with the active entity, by executing a program instruction ina data-processing system; locking each record associated with one of theactive entity and the at least one of the remaining plurality of marketentities to a specific user, by executing a program instruction in adata-processing system; and providing the at least one of the remainingplurality of market entities and the parent advertiser, by executing aprogram instruction in a data-processing system.
 2. The method of claim1, comprising providing the at least one of the remaining plurality ofmarket entities and the parent advertiser via a user interface, byexecuting a program instruction in a data-processing system.
 3. Themethod of claim 2, the providing further comprising: displaying the atleast one of the remaining plurality of market entities in an unmatchedentity section of the user interface, by executing a program instructionin a data-processing system; and displaying the parent advertiser in aparent advertiser section of the user interface, by executing a programinstruction in a data-processing system.
 4. The method of claim 1, thefirst market is associated with a first geographic region and the secondmarket is associated with a second geographic region.
 5. The method ofclaim 1 further comprising configuring said plurality of matchingoptions to comprise at least one of the following, by executing aprogram instruction in a data-processing system: an exact match; a likematch; and a Soundex match.
 6. The method of claim 1, locking eachrecord includes assigning each record to the specific user.
 7. Themethod of claim 1, the specific user is a user associated with one ofthe first market and the second market.
 8. An advertising datamanagement system, comprising a processor; a data bus coupled to saidprocessor; and a computer-usable medium embodying computer code, saidcomputer-usable medium being coupled to said data bus, said computerprogram code comprising instructions executable by said processor andconfigured for: configuring a set of rules in order to manage aplurality of unmatched records, each individual record of the pluralityof unmatched records is associated with a separate market entity of aplurality of market entities, each of the plurality of market entitiesis one of an advertiser and an agency, and managing the plurality ofunmatched records includes scoring each of the plurality of unmatchedrecords; computing a scoring function, based on the set of rules, toassign a individual rank to each individual record based on one ofrevenue and market ranking associated with the separate market entity;selecting a highest-ranking market entity from the plurality of marketentities as the active entity, the active entity is associated with afirst market; using a plurality of matching options to match the activeentity to a parent advertiser in order to manage and report recordsassociated with the active entity; locking each record associated withthe active entity to a specific user; and providing the parentadvertiser via a user interface.
 9. The advertising data managementsystem of claim 8, said instructions are further configured for usingthe plurality of matching options to match the active entity to at leastone of a remaining plurality of market entities, the at least one of aremaining plurality of market entities is associated with a secondmarket.
 10. The advertising data management system of claim 9, saidinstructions are further configured for locking each record associatedwith one of the active entity and the at least one of the remainingplurality of market entities to a specific user; and providing the atleast one of the remaining plurality of market entities and the parentadvertiser via a user interface.
 11. The advertising data managementsystem of claim 8 wherein said instructions are further configured forarranging said plurality of matching options to comprise at least one ofthe following: an exact match; a like match; and a Soundex match. 12.The advertising data management system of claim 9, the first market isassociated with a first geographic region and the second market isassociated with a second geographic region.
 13. The advertising datamanagement system of claim 8, locking each record includes restrictingaccess to each record to the specific user.
 14. The advertising datamanagement system of claim 13, the specific user is a user associatedwith one of the first market and the second market.
 15. An advertisingdata management system, comprising a processor; a data bus coupled tosaid processor; and a computer-usable medium embodying computer code,said computer-usable medium being coupled to said data bus, saidcomputer program code comprising instructions executable by saidprocessor and configured for: configuring a set of rules in order tomanage a plurality of unmatched records, each individual record of theplurality of unmatched records is associated with a separate marketentity of a plurality of market entities, each of the plurality ofmarket entities is one of an advertiser and an agency, and managing theplurality of unmatched records includes scoring each of the plurality ofunmatched records; computing a scoring function, based on the set ofrules, to assign a individual rank to each individual record based onone of revenue and market ranking associated with the separate marketentity; selecting a highest-ranking market entity from the plurality ofmarket entities as the active entity, the active entity is associatedwith a first market; performing a first matching process, using aplurality of matching options, to match the active entity to at leastone of a remaining plurality of market entities, the at least one of aremaining plurality of market entities is associated with a secondmarket, by executing a program instruction in a data-processing system;and providing the at least one of the remaining plurality of marketentities via a user interface.
 16. The advertising data managementsystem of claim 15 wherein said instructions are further configured forlocking each record associated with one of the active entity and the atleast one of the remaining plurality of market entities to a specificuser.
 17. The advertising data management system of claim 16 wherein:the at least one of a remaining plurality of market entities isassociated with a second market; and the specific user is a userassociated with one of the first market and the second market.
 18. Theadvertising data management system of claim 15, the first market isassociated with a first geographic region and the second market isassociated with a second geographic region.
 19. The advertising datamanagement system of claim 15 wherein said instructions are furtherconfigured for: performing a second matching process to match the activeentity to a parent advertiser in order to manage and report recordsassociated with the active entity, by executing a program instruction ina data-processing system; and providing the at least one of theremaining plurality of market entities and the parent advertiser, byexecuting a program instruction in a data-processing system.
 20. Theadvertising data management system of claim 15 wherein said instructionsare further configured for arranging said plurality of matching optionsto comprise at least one of the following: an exact match; a like match;and a Soundex match.